package com.pansky.crm.service;

import com.pansky.crm.common.mybatisplus.ApiResult;
import com.pansky.crm.common.mybatisplus.ResultPageDto;
import com.pansky.crm.common.mybatisplus.SuperService;
import com.pansky.crm.entity.Employee;
import com.pansky.crm.entity.bo.EmployeeBatchUpdateStatusDTO;
import com.pansky.crm.entity.bo.EmployeePageBo;
import com.pansky.crm.entity.bo.EmployeeUpdatePwdDTO;
import com.pansky.crm.entity.vo.EmployeeInfo;

import java.util.List;

/**
 * @author ：zhouzhiyong
 * @date ：Created in 2021/2/22 9:24
 * @description：员工service
 */
public interface EmployeeService extends SuperService<Employee> {

    List<EmployeeInfo> findEmployeeInfo(Employee employee);

    ResultPageDto queryByPage(EmployeePageBo employeePageBo);

    Integer updateStatus(Integer employeeId, Integer status);

    boolean resetPasswd(Integer employeeId);

    boolean updatePwd(EmployeeUpdatePwdDTO updatePwdDTO, String token);

    ApiResult<Boolean> addEmployee(Employee emp, String token);

    boolean updateBatchRoleId(List<Integer> employeeIdList, Integer roleId);

    boolean batchUpdateStatus(EmployeeBatchUpdateStatusDTO batchUpdateStatusDTO);
}
